package com.nanyang.tms.api.service.storerule;

import com.nanyang.common.core.domain.ApiResult;
import com.nanyang.tms.api.dto.request.storedrule.StoredRuleAddRequest;
import com.nanyang.tms.api.dto.request.storedrule.StoredRuleUpdateRequest;
import com.nanyang.tms.api.dto.request.storedrule.StoredRuleUpdateStateRequest;
import com.nanyang.tms.api.dto.response.storedrule.StoredRuleResponse;

import java.util.List;

public interface StoredRuleRpcService {

    /**
     * 列表
     * @return
     */
    ApiResult<List<StoredRuleResponse>> listStoredRule();
    /**
     *
     * <p>getStoredRuleById</p>
     * <p>Description:(根据code获取服务商详情)</p>
     *
     * @param code
     * @return
     */
    ApiResult<StoredRuleResponse> selectByCode(String code);

    /**
     *
     * <p>saveStoredRule</p>
     * <p>Description:(保存)</p>
     *
     * @param param
     * @return
     */
    ApiResult<Boolean> saveStoredRule(StoredRuleAddRequest param);

    /**
     *
     * <p>updateStoredRule</p>
     * <p>Description:(修改)</p>
     *
     * @param param
     * @return
     */
    ApiResult<Boolean> updateStoredRule(StoredRuleUpdateRequest param);
    /**
     *
     * <p>updateStoredRule</p>
     * <p>Description:(禁用)</p>
     *
     * @param param
     * @return
     */
    ApiResult<Boolean> disableState(StoredRuleUpdateStateRequest param);
    /**
     *
     * <p>updateStoredRule</p>
     * <p>Description:(启用)</p>
     *
     * @param param
     * @return
     */
    ApiResult<Boolean> enableState(StoredRuleUpdateStateRequest param);
}
